//  给数组的原型添加remove方法
Array.prototype.remove = function (vals) {
    if (vals === null) return;
    // 如果传值的是数组, 则把数组里面的每一个都删除掉
    if (vals instanceof Array) {
        for (var i in vals) {
            if (!vals.hasOwnProperty(i)) continue;
            var val = vals[i];
            for (var j = 0; j < this.length; i++) {
                if (this[j] === val) {
                    this.splice(j, 1);
                    break;
                }
            }
        }
    } else {  // 否则删除其中一个
        for (var i = 0; i < this.length; i++) {
            if (this[i] === vals) {
                this.splice(i, 1);
                break;
            }
        }
    }
};

// 数组的浅复制方法
Array.prototype.copy = function () {
    var arrayCopy = [];
    for(var i = 0; i < this.length; i++){
        arrayCopy.push(this[i])
    }
    return arrayCopy;
};

// 数组的重复
Array.prototype.repeat = function(repeat_num){
    let new_array = this.copy();
    for(let i = 0; i < repeat_num-1; i++){
        for(let element of this){
            new_array.push(element)
        }
    }
    return new_array;
};

export default Array;